As network technologies develop, the rapid development of new network applications quickly follows suit. Some of such network applications are client applications, in which the applications communicate with servers or other clients in a network, thereby generating network traffic. For example, as cellular networks become more advanced, ever more advanced smart phone applications are developed that stream data to and from a client device such as a smart-phone. These applications allow a user of the device to watch video clips, post pictures to social media sites, play games with friends, etc., all of which generate network traffic. When network traffic generated by such applications increases abruptly, a network overload may occur, thereby lowering performance of applications and affecting their normal use. Therefore, performing traffic control on client applications is important to guaranteeing the normal use of the applications. In some conventional methods of traffic control, a traffic control threshold is employed to prevent a network overload (e.g., on the client side, in the form of an outbound traffic threshold, or on the server side, in the form of a request traffic threshold). In such methods, a maximum value of traffic (e.g., the traffic control threshold) is set for a respective client corresponding to a specific period of time (for example, the client is allowed to generate 2 megabytes per hour of traffic). When the total traffic generated by the applications of the client are less than or equal to the traffic control threshold, each application can be used in a normal mode of operation. On the other hand, when the total traffic generated by the applications of the client is greater than the traffic control threshold, network abnormality processing is performed, which can include, for example, restarting a networking program of an application or reporting abnormality information to a network server for handling.
However, in such methods, the control is performed with respect to total traffic of the client without taking into account usage differences between the various applications of the client and behavioral characteristics of the user. Conventional methods of traffic control are thus inconvenient and burdensome for users because they are blind to the behavioral characteristics of the user, which in some circumstances will indicate that a user would likely prefer that a particular application be treated differently with respect to traffic control than another application. For example, in some circumstances it may be preferable to control traffic more severely for applications running in the background, whose real-time services are less critical than an application running in the foreground. Likewise, in some circumstances it may be preferable to control traffic less severely for applications running in the foreground.